package pe.edu.upc.dai.grupo4.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import pe.edu.upc.dai.grupo4.utils.ConnectionUtils;
import pe.edu.upc.dai.grupo4.utils.DaoException;

/**
 *
 * @author Tito Luyo Murata
 */
public class ProcesoConciliacionDaoImpl implements ProcesoConciliacionDao {

    public void concilia(int CodBanco, int CodCuentaBancaria, int Anho, int Mes) {
        Connection connection = null;
        PreparedStatement st = null;
        try {
            connection = ConnectionUtils.getConnection();
            st = connection.prepareStatement("{call usp_ProcesaConciliacion(?,?,?,?)}");
            st.setInt(1, CodBanco);
            st.setInt(2, CodCuentaBancaria);
            st.setInt(3, Anho);
            st.setInt(4, Mes);
            st.execute();
            ConnectionUtils.commit(connection);
        } catch (SQLException e) {
            throw new DaoException(e);
        } finally {
            ConnectionUtils.closeStatement(st);
            ConnectionUtils.closeConnection(connection);
        }
    }

    public void desConcilia(int CodBanco, int CodCuentaBancaria, int Anho, int Mes) {
        Connection connection = null;
        PreparedStatement st = null;
        try {
            connection = ConnectionUtils.getConnection();
            st = connection.prepareStatement("{call usp_ProcesaDesconciliacion(?,?,?,?)}");
            st.setInt(1, CodBanco);
            st.setInt(2, CodCuentaBancaria);
            st.setInt(3, Anho);
            st.setInt(4, Mes);
            st.execute();
            ConnectionUtils.commit(connection);
        } catch (SQLException e) {
            throw new DaoException(e);
        } finally {
            ConnectionUtils.closeStatement(st);
            ConnectionUtils.closeConnection(connection);
        }
    }
}
